home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / lib / perl / sys / ioctl.ph < prev    next >
Encoding:
Text File  |  1991-08-12  |  10.4 KB  |  234 lines

  1. if (!defined &_IOCTL) {
  2.     eval 'sub _IOCTL {1;}';
  3.     if (!defined &_TTYCHARS) {
  4.     require 'sys/ttychars.ph';
  5.     }
  6.     if (!defined &TTYDEV) {
  7.     require 'sys/ttydev.ph';
  8.     }
  9.     if (!defined &_FBDEV) {
  10.     require 'sys/fb.ph';
  11.     }
  12.     require 'cfuncproto.ph';
  13.     if (!defined &_SGTTYB_) {
  14.     eval 'sub _SGTTYB_ {1;}';
  15.     }
  16.     eval 'sub TIOCGSIZE { &TIOCGWINSZ;}';
  17.     eval 'sub TIOCSSIZE { &TIOCSWINSZ;}';
  18.     if (!defined &_IO) {
  19.     eval 'sub IOCPARM_MASK {0x1fff;}';
  20.     eval 'sub IOCPARM_LEN {
  21.         local($x) = @_;
  22.         eval "((($x) >> 16) &  &IOCPARM_MASK)";
  23.     }';
  24.     eval 'sub IOCPARM_MAX { &NBPG;}';
  25.     eval 'sub IOC_VOID {0x20000000;}';
  26.     eval 'sub IOC_OUT {0x40000000;}';
  27.     eval 'sub IOC_IN {0x80000000;}';
  28.     eval 'sub IOC_INOUT {( &IOC_IN| &IOC_OUT);}';
  29.     eval 'sub IOC_DIRMASK {0xe0000000;}';
  30.     eval 'sub _IO {
  31.         local($x,$y) = @_;
  32.         eval "((\'int\') ( &IOC_VOID|($x<<8)|$y))";
  33.     }';
  34.     eval 'sub _IOR {
  35.         local($x,$y,$t) = @_;
  36.         eval "((\'int\') ( &IOC_OUT|(($sizeof{$t}& &IOCPARM_MASK)<<16)|($x<<8)|$y))";
  37.     }';
  38.     eval 'sub _IOW {
  39.         local($x,$y,$t) = @_;
  40.         eval "((\'int\') ( &IOC_IN|(($sizeof{$t}& &IOCPARM_MASK)<<16)|($x<<8)|$y))";
  41.     }';
  42.     eval 'sub _IOWR {
  43.         local($x,$y,$t) = @_;
  44.         eval "((\'int\') ( &IOC_INOUT|(($sizeof{$t}& &IOCPARM_MASK)<<16)|($x<<8)|$y))";
  45.     }';
  46.     }
  47.     eval 'sub TIOCGETD { &_IOR(ord(\'t\'), 0, \'int\');}';
  48.     eval 'sub TIOCSETD { &_IOW(ord(\'t\'), 1, \'int\');}';
  49.     eval 'sub TIOCHPCL { &_IO(ord(\'t\'), 2);}';
  50.     eval 'sub TIOCMODG { &_IOR(ord(\'t\'), 3, \'int\');}';
  51.     eval 'sub TIOCMODS { &_IOW(ord(\'t\'), 4, \'int\');}';
  52.     eval 'sub TIOCM_LE {0001;}';
  53.     eval 'sub TIOCM_DTR {0002;}';
  54.     eval 'sub TIOCM_RTS {0004;}';
  55.     eval 'sub TIOCM_ST {0010;}';
  56.     eval 'sub TIOCM_SR {0020;}';
  57.     eval 'sub TIOCM_CTS {0040;}';
  58.     eval 'sub TIOCM_CAR {0100;}';
  59.     eval 'sub TIOCM_CD { &TIOCM_CAR;}';
  60.     eval 'sub TIOCM_RNG {0200;}';
  61.     eval 'sub TIOCM_RI { &TIOCM_RNG;}';
  62.     eval 'sub TIOCM_DSR {0400;}';
  63.     eval 'sub TIOCGETP { &_IOR(ord(\'t\'), 8,\'struct sgttyb\');}';
  64.     eval 'sub TIOCSETP { &_IOW(ord(\'t\'), 9,\'struct sgttyb\');}';
  65.     eval 'sub TIOCSETN { &_IOW(ord(\'t\'),10,\'struct sgttyb\');}';
  66.     eval 'sub TIOCEXCL { &_IO(ord(\'t\'), 13);}';
  67.     eval 'sub TIOCNXCL { &_IO(ord(\'t\'), 14);}';
  68.     eval 'sub TIOCFLUSH { &_IOW(ord(\'t\'), 16, \'int\');}';
  69.     eval 'sub TIOCSETC { &_IOW(ord(\'t\'),17,\'struct tchars\');}';
  70.     eval 'sub TIOCGETC { &_IOR(ord(\'t\'),18,\'struct tchars\');}';
  71.     eval 'sub TANDEM {0x00000001;}';
  72.     eval 'sub CBREAK {0x00000002;}';
  73.     eval 'sub LCASE {0x00000004;}';
  74.     eval 'sub ECHO {0x00000008;}';
  75.     eval 'sub CRMOD {0x00000010;}';
  76.     eval 'sub RAW {0x00000020;}';
  77.     eval 'sub ODDP {0x00000040;}';
  78.     eval 'sub EVENP {0x00000080;}';
  79.     eval 'sub ANYP {0x000000c0;}';
  80.     eval 'sub NLDELAY {0x00000300;}';
  81.     eval 'sub NL0 {0x00000000;}';
  82.     eval 'sub NL1 {0x00000100;}';
  83.     eval 'sub NL2 {0x00000200;}';
  84.     eval 'sub NL3 {0x00000300;}';
  85.     eval 'sub TBDELAY {0x00000c00;}';
  86.     eval 'sub TAB0 {0x00000000;}';
  87.     eval 'sub TAB1 {0x00000400;}';
  88.     eval 'sub TAB2 {0x00000800;}';
  89.     eval 'sub XTABS {0x00000c00;}';
  90.     eval 'sub CRDELAY {0x00003000;}';
  91.     eval 'sub CR0 {0x00000000;}';
  92.     eval 'sub CR1 {0x00001000;}';
  93.     eval 'sub CR2 {0x00002000;}';
  94.     eval 'sub CR3 {0x00003000;}';
  95.     eval 'sub VTDELAY {0x00004000;}';
  96.     eval 'sub FF0 {0x00000000;}';
  97.     eval 'sub FF1 {0x00004000;}';
  98.     eval 'sub BSDELAY {0x00008000;}';
  99.     eval 'sub BS0 {0x00000000;}';
  100.     eval 'sub BS1 {0x00008000;}';
  101.     eval 'sub ALLDELAY {( &NLDELAY| &TBDELAY| &CRDELAY| &VTDELAY| &BSDELAY);}';
  102.     eval 'sub CRTBS {0x00010000;}';
  103.     eval 'sub PRTERA {0x00020000;}';
  104.     eval 'sub CRTERA {0x00040000;}';
  105.     eval 'sub TILDE {0x00080000;}';
  106.     eval 'sub MDMBUF {0x00100000;}';
  107.     eval 'sub LITOUT {0x00200000;}';
  108.     eval 'sub TOSTOP {0x00400000;}';
  109.     eval 'sub FLUSHO {0x00800000;}';
  110.     eval 'sub NOHANG {0x01000000;}';
  111.     eval 'sub L001000 {0x02000000;}';
  112.     eval 'sub CRTKIL {0x04000000;}';
  113.     eval 'sub PASS8 {0x08000000;}';
  114.     eval 'sub CTLECH {0x10000000;}';
  115.     eval 'sub PENDIN {0x20000000;}';
  116.     eval 'sub DECCTQ {0x40000000;}';
  117.     eval 'sub NOFLSH {0x80000000;}';
  118.     eval 'sub TIOCLBIS { &_IOW(ord(\'t\'), 127, \'int\');}';
  119.     eval 'sub TIOCLBIC { &_IOW(ord(\'t\'), 126, \'int\');}';
  120.     eval 'sub TIOCLSET { &_IOW(ord(\'t\'), 125, \'int\');}';
  121.     eval 'sub TIOCLGET { &_IOR(ord(\'t\'), 124, \'int\');}';
  122.     eval 'sub LCRTBS {( &CRTBS>>16);}';
  123.     eval 'sub LPRTERA {( &PRTERA>>16);}';
  124.     eval 'sub LCRTERA {( &CRTERA>>16);}';
  125.     eval 'sub LTILDE {( &TILDE>>16);}';
  126.     eval 'sub LMDMBUF {( &MDMBUF>>16);}';
  127.     eval 'sub LLITOUT {( &LITOUT>>16);}';
  128.     eval 'sub LTOSTOP {( &TOSTOP>>16);}';
  129.     eval 'sub LFLUSHO {( &FLUSHO>>16);}';
  130.     eval 'sub LNOHANG {( &NOHANG>>16);}';
  131.     eval 'sub LCRTKIL {( &CRTKIL>>16);}';
  132.     eval 'sub LPASS8 {( &PASS8>>16);}';
  133.     eval 'sub LCTLECH {( &CTLECH>>16);}';
  134.     eval 'sub LPENDIN {( &PENDIN>>16);}';
  135.     eval 'sub LDECCTQ {( &DECCTQ>>16);}';
  136.     eval 'sub LNOFLSH {( &NOFLSH>>16);}';
  137.     eval 'sub TIOCSBRK { &_IO(ord(\'t\'), 123);}';
  138.     eval 'sub TIOCCBRK { &_IO(ord(\'t\'), 122);}';
  139.     eval 'sub TIOCSDTR { &_IO(ord(\'t\'), 121);}';
  140.     eval 'sub TIOCCDTR { &_IO(ord(\'t\'), 120);}';
  141.     eval 'sub TIOCGPGRP { &_IOR(ord(\'t\'), 119, \'int\');}';
  142.     eval 'sub TIOCSPGRP { &_IOW(ord(\'t\'), 118, \'int\');}';
  143.     eval 'sub TIOCSLTC { &_IOW(ord(\'t\'),117,\'struct ltchars\');}';
  144.     eval 'sub TIOCGLTC { &_IOR(ord(\'t\'),116,\'struct ltchars\');}';
  145.     eval 'sub TIOCOUTQ { &_IOR(ord(\'t\'), 115, \'int\');}';
  146.     eval 'sub TIOCSTI { &_IOW(ord(\'t\'), 114, \'char\');}';
  147.     eval 'sub TIOCNOTTY { &_IO(ord(\'t\'), 113);}';
  148.     eval 'sub TIOCPKT { &_IOW(ord(\'t\'), 112, \'int\');}';
  149.     eval 'sub TIOCPKT_DATA {0x00;}';
  150.     eval 'sub TIOCPKT_FLUSHREAD {0x01;}';
  151.     eval 'sub TIOCPKT_FLUSHWRITE {0x02;}';
  152.     eval 'sub TIOCPKT_STOP {0x04;}';
  153.     eval 'sub TIOCPKT_START {0x08;}';
  154.     eval 'sub TIOCPKT_NOSTOP {0x10;}';
  155.     eval 'sub TIOCPKT_DOSTOP {0x20;}';
  156.     eval 'sub TIOCSTOP { &_IO(ord(\'t\'), 111);}';
  157.     eval 'sub TIOCSTART { &_IO(ord(\'t\'), 110);}';
  158.     eval 'sub TIOCMSET { &_IOW(ord(\'t\'), 109, \'int\');}';
  159.     eval 'sub TIOCMBIS { &_IOW(ord(\'t\'), 108, \'int\');}';
  160.     eval 'sub TIOCMBIC { &_IOW(ord(\'t\'), 107, \'int\');}';
  161.     eval 'sub TIOCMGET { &_IOR(ord(\'t\'), 106, \'int\');}';
  162.     eval 'sub TIOCREMOTE { &_IOW(ord(\'t\'), 105, \'int\');}';
  163.     eval 'sub TIOCGWINSZ { &_IOR(ord(\'t\'), 104, \'struct winsize\');}';
  164.     eval 'sub TIOCSWINSZ { &_IOW(ord(\'t\'), 103, \'struct winsize\');}';
  165.     eval 'sub TIOCUCNTL { &_IOW(ord(\'t\'), 102, \'int\');}';
  166.     eval 'sub UIOCCMD {
  167.         local($n) = @_;
  168.         eval " &_IO(ord(\'u\'), $n)";
  169.     }';
  170.     eval 'sub TIOCCONS { &_IO(ord(\'t\'), 98);}';
  171.     eval 'sub OTTYDISC {0;}';
  172.     eval 'sub NETLDISC {1;}';
  173.     eval 'sub NTTYDISC {2;}';
  174.     eval 'sub TABLDISC {3;}';
  175.     eval 'sub SLIPDISC {4;}';
  176.     eval 'sub FIOCLEX { &_IO(ord(\'f\'), 1);}';
  177.     eval 'sub FIONCLEX { &_IO(ord(\'f\'), 2);}';
  178.     eval 'sub FIONREAD { &_IOR(ord(\'f\'), 127, \'int\');}';
  179.     eval 'sub FIONBIO { &_IOW(ord(\'f\'), 126, \'int\');}';
  180.     eval 'sub FIOASYNC { &_IOW(ord(\'f\'), 125, \'int\');}';
  181.     eval 'sub FIOSETOWN { &_IOW(ord(\'f\'), 124, \'int\');}';
  182.     eval 'sub FIOGETOWN { &_IOR(ord(\'f\'), 123, \'int\');}';
  183.     eval 'sub SIOCSHIWAT { &_IOW(ord(\'s\'), 0, \'int\');}';
  184.     eval 'sub SIOCGHIWAT { &_IOR(ord(\'s\'), 1, \'int\');}';
  185.     eval 'sub SIOCSLOWAT { &_IOW(ord(\'s\'), 2, \'int\');}';
  186.     eval 'sub SIOCGLOWAT { &_IOR(ord(\'s\'), 3, \'int\');}';
  187.     eval 'sub SIOCATMARK { &_IOR(ord(\'s\'), 7, \'int\');}';
  188.     eval 'sub SIOCSPGRP { &_IOW(ord(\'s\'), 8, \'int\');}';
  189.     eval 'sub SIOCGPGRP { &_IOR(ord(\'s\'), 9, \'int\');}';
  190.     eval 'sub SIOCADDRT { &_IOW(ord(\'r\'), 10, \'struct rtentry\');}';
  191.     eval 'sub SIOCDELRT { &_IOW(ord(\'r\'), 11, \'struct rtentry\');}';
  192.     eval 'sub SIOCSIFADDR { &_IOW(ord(\'i\'), 12, \'struct ifreq\');}';
  193.     eval 'sub SIOCGIFADDR { &_IOWR(ord(\'i\'),13, \'struct ifreq\');}';
  194.     eval 'sub SIOCSIFDSTADDR { &_IOW(ord(\'i\'), 14, \'struct ifreq\');}';
  195.     eval 'sub SIOCGIFDSTADDR { &_IOWR(ord(\'i\'),15, \'struct ifreq\');}';
  196.     eval 'sub SIOCSIFFLAGS { &_IOW(ord(\'i\'), 16, \'struct ifreq\');}';
  197.     eval 'sub SIOCGIFFLAGS { &_IOWR(ord(\'i\'),17, \'struct ifreq\');}';
  198.     eval 'sub SIOCGIFBRDADDR { &_IOWR(ord(\'i\'),18, \'struct ifreq\');}';
  199.     eval 'sub SIOCSIFBRDADDR { &_IOW(ord(\'i\'),19, \'struct ifreq\');}';
  200.     eval 'sub SIOCGIFCONF { &_IOWR(ord(\'i\'),20, \'struct ifconf\');}';
  201.     eval 'sub SIOCGIFNETMASK { &_IOWR(ord(\'i\'),21, \'struct ifreq\');}';
  202.     eval 'sub SIOCSIFNETMASK { &_IOW(ord(\'i\'),22, \'struct ifreq\');}';
  203.     eval 'sub SIOCGIFMETRIC { &_IOWR(ord(\'i\'),23, \'struct ifreq\');}';
  204.     eval 'sub SIOCSIFMETRIC { &_IOW(ord(\'i\'),24, \'struct ifreq\');}';
  205.     eval 'sub SIOCRPHYSADDR { &_IOWR(ord(\'i\'),28, \'struct ifdevea\');}';
  206.     eval 'sub SIOCSARP { &_IOW(ord(\'i\'), 30, \'struct arpreq\');}';
  207.     eval 'sub SIOCGARP { &_IOWR(ord(\'i\'),31, \'struct arpreq\');}';
  208.     eval 'sub SIOCDARP { &_IOW(ord(\'i\'), 32, \'struct arpreq\');}';
  209.     eval 'sub QIOCGINFO { &_IOR(ord(\'q\'), 1,  &DevScreenInfo *);}';
  210.     eval 'sub QIOCPMSTATE { &_IOW(ord(\'q\'), 2,  &DevCursor);}';
  211.     eval 'sub QIOWCURSORCOLOR { &_IOW(ord(\'q\'), 3,  &unsigned \'int\' [6]);}';
  212.     eval 'sub QIOCINIT { &_IO(ord(\'q\'), 4);}';
  213.     eval 'sub QIOCKPCMD { &_IOW(ord(\'q\'), 5,  &DevKpCmd);}';
  214.     eval 'sub QIOCADDR { &_IOR(ord(\'q\'), 6,  &DevScreenInfo *);}';
  215.     eval 'sub QIOWCURSOR { &_IOW(ord(\'q\'), 7, \'short\'[32]);}';
  216.     eval 'sub QIOKERNLOOP { &_IO(ord(\'q\'), 8);}';
  217.     eval 'sub QIOKERNUNLOOP { &_IO(ord(\'q\'), 9);}';
  218.     eval 'sub QIOVIDEOON { &_IO(ord(\'q\'), 10);}';
  219.     eval 'sub QIOVIDEOOFF { &_IO(ord(\'q\'), 11);}';
  220.     eval 'sub QIOSETCMAP { &_IOW(ord(\'q\'), 12,  &DevColorMap);}';
  221.     eval 'sub QIOISCOLOR { &_IOR(ord(\'q\'), 13, \'int\');}';
  222.     eval 'sub FBIOGTYPE { &_IOR(ord(\'F\'), 0, \'struct fbtype\');}';
  223.     eval 'sub FBIOGPIXRECT { &_IOWR(ord(\'F\'), 1, \'struct fbpixrect\');}';
  224.     eval 'sub FBIOGINFO { &_IOR(ord(\'F\'), 2, \'struct fbinfo\');}';
  225.     eval 'sub FBIOPUTCMAP { &_IOW(ord(\'F\'), 3, \'struct fbcmap\');}';
  226.     eval 'sub FBIOGETCMAP { &_IOW(ord(\'F\'), 4, \'struct fbcmap\');}';
  227.     eval 'sub FBIOSATTR { &_IOW(ord(\'F\'), 5, \'struct fbsattr\');}';
  228.     eval 'sub FBIOGATTR { &_IOR(ord(\'F\'), 6, \'struct fbgattr\');}';
  229.     eval 'sub FBIOSVIDEO { &_IOW(ord(\'F\'), 7, \'int\');}';
  230.     eval 'sub FBIOGVIDEO { &_IOR(ord(\'F\'), 8, \'int\');}';
  231.     eval 'sub FBIOVERTICAL { &_IOW(ord(\'F\'), 9, \'int\');}';
  232. }
  233. 1;
  234.